home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
- TurboAss
- ©1989 Σ-soft
- von Markus Fritze & Sören Hellwig
-
- Version 1.62
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Markus Fritze, Sören Hellwig
- März 1990
-
-
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 1
-
-
- 1 Allgemeines
-
- 1.1 Einleitung
-
- Nach langem hin und her haben wir uns entschlossen unser
- Assembler-Paket als Shareware auf den Markt zu werfen. Der
- Assembler wurde vormals durch OMIKRON.Software unter dem Namen
- OMIKRON.Assembler verkauft. Die Shareware-Version ist jedoch
- eine erweiterte Version des OMIKRON.Assemblers. Sie enthält
- weniger Fehler, weitere Features und ist noch ein wenig
- schneller. Zum Paket gehört (natürlich) auch ein Debugger, der
- Bugaboo (vormals OMIKRON.Debugger). Somit kann nun jeder User in
- den Genuß eines schnellen und leistungsfähigen Assemblers und
- Debuggers kommen; zumal es zwar viele Programmiersprachen als
- Shareware bzw. PD gibt, aber noch keinen (vernünftigen)
- Assembler.
-
- DIE FIRMA OMIKRON.SOFTWARE HAT NICHTS MIT DIESEM ASSEMBLER-PAKET
- ZU TUN. Σ-SOFT IST ALLEINIGER INHABER ALLER RECHTE AM ASSEMBLER
- UND DEBUGGER!
-
- Dieser Text ist nicht als eine Anleitung gedacht, sondern nur
- als Kurzeinführung in den Assembler. Die vollständig Anleitung
- auf ca. 240 Seiten gibt es bei den Autoren. Zur Not kann auch
- das ST-Magazin 11/89 und 12/89 herangezogen werden. Dort hat
- die Referenzkarte den Assembler und Debugger zum Thema.
-
- Nachtrag:
-
- Es fehlen ziemlich viele Features in diesem README, im Vergleich
- zur Anleitung, es wird mir einfach zu viel... (Markus)
-
-
- 1.2 Features des TurboAss
-
- - Einfache und durchdachte (!) Bedienung.
-
- - Der Assembler übersetzt durchschnittlich 1 300 000 Zeilen
- pro Minute.
-
- - Syntax-Check bereits bei der Eingabe. Teilweise sogar
- Semantik-Check! Es werden sowohl Tippfehler, wie auch
- doppelt vergebene Symbolnamen bereits bei der Eingabe
- gemeldet.
-
- - Viele besonders leistungsfähige Funktionen des Editors,
- z.B. Suche von Symbolen, Ersetzen von Symbolen, Einklappen
- von Programmteilen (wie in GFA-Basic 3.0), u.v.a.m.
-
- - Fantastische Kombination von Debugger und Assembler. Bei
- einem Absturz eines Programms im Debugger kann der
- Assembler automatisch die Absturzadresse in eine
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 2
-
-
- Zeilennummer umrechnen!!!
-
- - Eigene Tastatur- und Bildschirmtreiber => selbst bei
- härtesten Programmabstürzen funktionieren Assembler und
- Debugger noch.
-
- - KEINE Makros!!!
-
- - u.v.a.m.
-
-
- 1.3 Was ist Shareware?
-
- - Jeder kann/darf/muß/soll den TurboAss kopieren! Dabei
- müssen aber stets ALLE (!) Dateien mitkopiert werden.
-
- - Wem den Assembler gefällt, sollte uns fairerweise 50DM
- überweisen. Das hat für alle Parteien Vorteile:
-
- Für uns:
- - Wir arbeiten nicht ganz umsonst (im TurboAss stecken 3
- "Mannjahre" Arbeit)
-
- Für den User:
- - Er bekommt eine 240 Seiten starke Anleitung
-
- - Er bekommt die neuste Version mit persönlicher
- Seriennummer
-
- - Er bekommt das erste Update kostenlos
-
- - Er erhält bei gefundenen Fehlern eine fehlerfreie Version
-
- - Er kann sich bei Problemen an uns wenden
-
- - Er bekommt für jeden User, der bei Registierung seine
- Seriennummer angibt, 10DM (allerdings maximal 10 mal, wir
- wollen keine PD-Vertriebe finanzieren). Das Geld ist also
- eine "Entschädigung" für das Vorführen des Assemblers und
- das Kopieren.
-
- - Nochmal: Läßt sich jemand registrieren, so gibt er die
- Seriennummer des vorher benutzen Assemblers an. Der User,
- dem diese Seriennummer gehört, bekommt vom uns 10DM.
- Alles klar?
-
- Wer diese Angebot annehmen will, wende sich bitte an:
- Markus Fritze
- Birkhahnkamp 38
- 2000 Norderstedt 1
- Tel: 040/5223955
- (ab 18Uhr, auch am Wochenende (NIE VOR 12UHR!!!))
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 3
-
-
- BLZ: 20069111, Norderstedter Bank
- Kontonummer: 407860
-
- Ich bitte allerdings teilweise um etwas Geduld; ich hoffe die
- meiste Post am selben Tag zu erledigen, wenn aber keine
- Anleitungen mehr da sind oder wenn wir gerade einige Neuerungen
- implementieren, kann es schon mal etwas dauern (Wenn nach 2-3
- Wochen allerdings nix passiert kann eine Anfrage klären, ob die
- Post auch angekommen ist).
-
-
-
- 1.4 Hardwarevorraussetzungen
-
- Atari ST mit 512k, wobei allerdings erst ab 1Mb Assembler und
- Debugger gemeinsam im RAM gehalten werden können, was
- seinerseits wieder ein sehr wirksames Debugging erst ermöglicht.
- Die hohe Auflösung bietet sich wohl eher an, als die mittlere
- Auflösung (Ist einfach augenfreundlicher); aber der TurboAss
- läuft sowohl in Farbe, wie auch in S/W.
-
-
- 1.5 Installation
-
- TURBOASS.PRG, TURBOASS.CFG, TURBOASS.DAT, BUGABOO.PRG und
- CALL.PRG auf eine Disk, bzw. in einen Ordner kopieren. Das
- war's.
-
-
- 1.6 Zu den Autoren
-
- Sören Hellwig und ich (Markus Fritze) sind zur Zeit 21 bzw. 22
- Jahre alt und studieren technische Informatik an der FH-Wedel
- bei Hamburg. Deswegen bitte wir auch teilweise um etwas Geduld,
- wenn Anfragen nach Updates, etc. kommen; das Studium geht leider
- vor. Zudem beantworte ich jeden Brief, der Rückporto
- beinhaltet. Post ohne Rückporto wird nur in Ausnahmefällen
- beantwortet (Zur Registrierung ist KEIN Rückporto nötig!)
-
-
- 1.7 Haftung/Rechte
-
- Alle Rechte am TurboAss liegen bei Σ-soft. Wobei jeder seinen
- Assembler beliebig kopieren darf. Auch das Upload in Mailboxen
- ist erlaubt. Der TurboAss und das Handbuch wurden mit größter
- Sorgfalt erstellt. Leider sind Fehler nie auzuschließen,
- deswegen möchten wir sie darauf hinweisen, daß wir weder eine
- Garantie für die Fehlerfreiheit geben, noch die Haftung für
- irgendwelche Folgen, gleich ob durch Fehler im Handbuch, in der
- Software oder in der Hardware verursacht, übernehmen können. Es
- wird wohl jeder verstehen, daß wir keine besondere Begeisterung
- verspüren, wenn jemand behauptet, der Assembler habe im seine
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 4
-
-
- Platte mit Sourcetexten im Werte von mehreren Millionen Mark
- zerstört, uns auf Schadenersatz verklagen will. Also: Benutzung
- auf eigene Gefahr! (Dieser Abschnitt gilt wohl bei allen
- Softwarefirmen.
-
-
- 2 Der Assembler
-
-
- 2.1 Benutzeroberfläche
-
- Die Benutzeroberfläche ist nicht von GEM o.ä. abhängig, d.h. neu
- programmiert, das hat den Vorteil, daß der Assembler sicherer
- gegen Abstürze und auch schneller ist. Zudem konnten einige
- nette Features implementiert werden. Trotzdem sollte die
- Umstellung von GEM wohl nicht ins Gewicht fallen. Die kleinen
- Buchstaben in den Buttons bewirken mit ALT zusammen gedrückt,
- das Anklicken des Buttons wie mit der Maus.
-
-
- 2.2 Die Maus im Assembler
-
- Man kann mit der Maus eine ganze Menge Dinge machen, hier sei
- jedoch nur die Benutzung im Assembler erklärt:
-
- Im Sourcetext:
- Linke Maustaste:
- Einfachklick: Cursor setzen
- langer Klick: Block markieren (mit Scrollen)
- Doppelklick : Sprung zur Definition des angeklickten Symbols
-
- Rechte Maustaste:
- Einfachklick: Sourcetext scrollen (nur am Rand klicken!)
- Doppelklick : Formel in den Rechner übernehmen
-
- In der Statuszeile:
- einfach alles mal mit links bzw. rechts anklicken...
-
-
- 2.3 Der Editor
-
- Jede eingegebene Zeile wird automatisch auf ihren Syntax und
- teilweise auch auf die Semantik überprüft. Wenn die Zeile
- fehlerfrei ist, wird sie sofort formatiert ausgegeben. Bei einem
- Eingabefehler wird in der Statuszeile die Fehlermeldung
- angezeigt.
-
-
- 2.4 Besonderheiten
-
- Als Adressierungsart wird auch "absolut short" direkt
- unterstützt. Dazu ist hinter der Adresse ".w" anzugeben.
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 5
-
-
- Line-A-Routinen können mit "LINEA #Nummer" eingegeben werden.
- Der Assembler wandelt nicht-Motorola Eingaben wenn möglich
- automatisch in das Motorola-Format um.
-
-
- 2.5 Optimierungen
-
- Der Assembler kann einige Optimierungen selbstständig finden.
- Dazu gehören:
- Absolut lang -> relativ
- relativ -> relativ short
- Absolut lang -> PC-relativ
- MOVE.L #xx,A0 -> LEA xx,A0 (wenn dannach PC-relativ was bringt)
- MOVE.L #xx,-(SP)-> PEA xx,A0 (wenn dannach PC-relativ was bringt)
- Ferner werden einige für C-Compiler typische Sprünge gefunden
- (z.B. 2 aufeinanderfolgende BRA, wobei das 2.BRA nie
- angesprungen werden kann) Wenn der Assembler optimieren kann,
- erscheint nach dem Assemblieren ein Button "ANPASSEN", welcher
- die Optimierungen im Sourcetext vornimmt. Dabei kann auch
- zurück-"optimiert" werden, wenn dies nötig sein sollte.
-
-
- 2.6 Formeln
-
- Alles was so Standard ist:
- + - * / ! (log.NOT) ~ (NOT bzw. EOR)
- << (SHL) >> (SHR) | (OR) & (AND)
- sowie Vergleiche
-
- Als Zahlenbasis sind möglich:
- Dezimal : . oder nix
- Hexadezimal : $
- Binär : %
- ASCII : " oder '
-
- Als interne Variablen sind ^^DATE (GEMDOS-Datum), ^^TIME
- (GEMDOS-Zeit) * (akt.PC), ^^RSCOUNT (akt.Wert des RS-Zählers)
- und ^^SYMTAB (<>0, wenn Symboltabelle erzeugt wird)
-
- Symbole sind max.23 Zeichen lang. Alle Zeichen sind
- signifikant. Erlaubt sind auch Umlaute und alle anderen Zeichen
- > 126.
-
-
- 2.7 Tastaturkommandos
-
- Cursortasten, Backspace, etc. wie gewohnt CTRL-Y, CTRL-B, etc.
- wie in TEMPUS
- CTRL-D verdoppelt die Cursorzeile.
- CTRL-M/ALT-M ermöglicht das Verschieben der Zeile.
- CTRL-W ändert die Zahlenbasis der Zahl unter dem Cursor
- CTRL-U markiert alle Zeichen mit Warnungen, in welchen ein
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 6
-
-
- Symbol definiert ist, welches nirgends benutzt wird. Damit kann
- man prima unbenutzt Unterprogramme finden!
- ALT-Zehnerblock wie bei MS-DOS
- ESC+Buchstabe Abkürzung für einen Befehl
- CTRL-ESC Tastaturmakro beginnen. Dann zu belegende Taste
- drücken. Alle folgenden Tasten (nicht die Maus!) werden
- aufgezeichnet. Mit ALT-ESC wird die Definition abgeschlossen.
- Die belegte Taste kann mit CTRL-ESC, Taste, ALT-ESC wieder
- freigegeben werden.
-
-
- 2.8 Ein paar Worte zu den
-
- Mit "Laden..." kann auch ein ASCII-Text eingeladen werden. Er
- wird dabei automatisch ins interne Format gewandelt. "Symbol
- suchen..." und "Symbol ersetzen..." ermöglichen das schnelle
- Finden bzw. schnelle Ersetzen von Symbolen. Dabei können z.B.
- alle Symbole gefunden werden, die mit "M" anfangen (Maske:"M*"),
- ohne daß jeder MOVE-Befehl gefunden wird (wie bei ASCII-Editoren
- üblich). "Sprung zu Zeile.." ermöglich auch das Springen zu
- Symboldefinitionen (Eingabe:z.B."M*"). Die Dialogboxen im
- "Einstellungen" Menü sind zum Teil selbsterklärend, der Rest ist
- entweder unwichtig oder zu kompliziert, als daß er hier erklärt
- werden könnte.
-
-
- 2.9 Der Assembler
-
- Wird mit F1 aufgerufen. Treten bei der Assemblierung Fehler auf,
- werden alle fehlerhaften Zeilen markiert. Nach der Assemblierung
- kann man dann mit CTRL-J bzw. Shift-CTRL-J von Fehler zu Fehler
- springen. Der Assembler speichert die Fehler, die
- Cursorposition, die Marker etc. übrigens mit dem Sourcetext ab!
-
- In der Dialogbox nach (!) der Assemblierung, können noch einige
- Extras eingestellt werden:
-
- - Soll eine Symboltabelle an das Programm gehängt werden
- (bzw. an den Debugger übergeben werden)?
-
- - Ferner kann das erzeugte Programm in verschiedenen Formaten
- abgespeichern. Möglich sind:
-
- DEBUGGER : Sprung in den Debugger mit Programmübergabe (KEIN
- SPEICHERN)
- STANDARD : Programm abspeichern (halt ganz normal...)
- DATAS : Data-Zeilen erzeugen (für OMIKRON.Basic)
- ABSOLUT : Programm für eine best. Adresse (z.B. EPROM)
- erzeugen
- BASIC : spezielles Format für Basic, welches sich selbst
- reloziert
- OMINLINE : INLINE-Zeile für OMIKRON-Basic erzeugen
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 7
-
-
- PARALLEL : spez.Übertragungsformat zum Amiga
- SMALLDRI : DRI-Format erzeugen (allerdings OHNE Importe)
- GFAINLINE : GFA-Inline-Format erzeugen.
- FSTANDARD : Fast-Load-Bit im Header setzen (ST-Magazin
- 11/89), sonst wie
-
- STANDARD
-
-
-
- 2.10 Pseudo-Opcodes des Assemblers
-
- DC, DS, BLK, DCB, EVEN, ALIGN, TEXT, DATA, BSS, END, =, EQU,
- GLOBAL, CNOP, ORG, ILLEGAL und REG
- wie üblich.
-
- DXSET Länge[,Füllwert] Tabelle definieren
- DX 'String' Tabelleneintrag auf Länge mit Füllwert aufgefüllt
- RS, RSRESET, RSSET, RSEVEN, RSBSS Relatives Segment
- OPT D+ normale Symboltabelle an
- OPT X+ erweiterte Symboltabelle an
- OPT W+ Warnungen an
- OPT P+ PC-relatives Programm muß erzeugt werden
- OPT O+ Optimierungen an
- Mit '-' kann etwas ausgeschaltet werden
- OUTPUT 'Filename' Default-Filename
- PATH 'Pfad' Pfad für IBYTES setzen
- IBYTES 'DEGAS.PI3',32000,34 Lädt ein Daten-File der Länge 32000
- ab Byte 34 der Datei ein (Hier: ein Degas-Bild)
- BASE is' viel zu kompliziert...
- REPT Anzahl, ENDR wiederholt Anzahl mal den Sourcetextteil
- zwischen
- REPT und ENDR
- IF, ELSE, ENDC bedingte Assemblierung
- FAIL Assemblierung abbrechen
-
-
- 3 Der Debugger
-
-
- 3.1 Vorwort
-
- Es ist eigentlich unmöglich den Debugger KURZ zu beschreiben,
- deswegen hier nur die wichtigsten Befehle (mit HELP kann man
- alle mal sehen bzw. in der Anleitung)
-
-
- 3.2 Allgemeines
-
- Der Debugger benutzt selber keine I/O-Routinen des TOS, d.h. er
- ist ziemlich unanfällig gegen Abstürze. Bei Lade-Operationen
- u.ä. wird aber dann natürlich doch auf's GEMDOS
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 8
-
-
- zurückgegriffen.
-
- Er verwaltet eine eigene Bildschirmseite, sodaß Programm und
- Debugger sich nicht auf einer gemeinsamen Seite tummeln.
-
- Das Debugging kann sowohl mit Tastatur und Maus erfolgen.
-
- Der Debugger kann resident im RAM gehalten werden, indem er in
- den AUTO-Ordner kopiert wird oder mit dem Befehl RESIDENT
- gehalten wird. Der Debugger kann dann mit CALL.PRG aufgerufen
- werden. Auch der Assembler kann auf den Debugger zugreifen (Er
- kann ihn aber auch nachladen).
-
-
- 3.3 Die Bedienung
-
- Die 2 oberen Zeilen entsprechen den Funktionstasten (mit und
- ohne Shift). Die 3 Folgezeilen stellen die Registerinhalte und
- Flags dar. Alle Teilen in diesen 5 Zeilen können mit der Maus
- ausgelöst werden.
-
- Die restlichen (max.20 Zeilen) sind frei veränderbar. Hier
- erfolgen die Eingaben, die Ausgaben. Hier tobt das Leben...
-
- Die Tastaturbelegung (Cursortasten, CTRL-M, CTRL-1, etc.) ist
- ähnlich der des Assemblers.
-
- Eingaben erfolgen stets ab Zeilenanfang bzw. hinter der
- Hexzahl. Leerzeichen werden ignoriert bzw. dienen als Trenner.
-
- Wenn der Assembler den Debugger aufgerufen hat, kann man
- CTRL-HELP zurückspringen. Dabei wird der aktuelle PC-Stand in
- eine Zeilennummer UMGERECHNET. D.h. wenn ein Programm beim
- Debuggen abgestürzt ist und der PC im Programm steht, kann man
- CTRL-HELP zur entsprechenden Stelle im Sourcetext springen.
-
- Mit SHIFT-SHIFT kann ein laufendes Programm angehalten werden.
- Der Ring-Indikator funktioniert allerdings auch. Der Debugger
- ist zudem RESETFEST. Als Notbremse ab und zu sinnvoll.
-
-
- F1 - Führt den nächsten Befehl aus
-
- SF1 - Bricht beim nächsten Sprungbefehl ab. Simuliert den
- Tracemode des 68020 Prozessors.
-
- F2 - Setzt hinter den nächsten Befehl einen Breakpoint und
- startet das Programm. Damit kann z.B. schnell ein
- Unterprogramm ausgeführt werden oder ein DBRA beendet
- werden.
-
- SF2 - nicht weiter wichtig
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 9
-
-
- F3 - Startet das Programm und bricht beim nächsten RTS ab.
- ACHTUNG! Wenn mit MOVEM Werte auf dem Stack gerettet werden
- => Bomb!
-
- SF3 - wie F3 nur bis zum nächsten RTE
-
- F4 - Führt den nächsten TRAP NICHT aus, sondern springt in
- ihn hinein.
-
- SF4 - Programm ohne Endebedingung starten
-
- F5 - nächsten Befehl ignorieren, d.h. überspringen
-
- SF5 - Insert/Overwrite toggeln
-
- F6 - Sourcecode anzeigen (nur wenn vom Assembler übergeben)
-
- SF6 - die umgerechneten Marker des Assemblers anzeigen.
-
- F7 - Memorydump ab dem PC
-
- SF7 - Breakpoints anzeigen
-
- F8 - Disassemble mit Dump ab PC
-
- SF8 - Info über die Speicherbelegung
-
- F9 - List ab PC (mit Symbolen, wenn vorhanden)
-
- SF9 - Screen löschen, Warmstart
-
- F10 - Umschalten der Bildschirmseite (Toggeln)
-
- SF10- Quit mit Sicherheitsabfrage
-
-
- 3.4 Die Befehle
-
- Alle Befehle können auf ein Minimum abgekürzt werden. An ALLEN
- Stellen sind als Parameter beliebige Ausdrücke erlaubt (d.h.
- Formeln etc.)
-
- ?Term Rechnet den Term aus
- Term darf (bis auf Vergleiche) alle Operationen des Assemblers
- enthalten. Zudem ist mit {400}.l eine indirekte Adressierung
- möglich. ".l" gibt dabei die Zugriffsbreite an. Alle Zahlen
- werden als HEXZAHLEN angesehen. Dezimalzahlen sind mit "."
- einzuleiten. Bei einer Symboltabelle kann man mit ".Symbolname"
- auf dieses zugreifen.
-
- Definierte Variablen (ein Teil davon)
- ^D0-^D7 Die Register D0-D7
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 10
-
-
- ^A0-^A7 Die Register A0-A7
- PC, USP, SSP, SR, CCR, SP Die gleichnamigen Register
- ^M0-^M9 Die umgerechneten Marker des Assemblers
-
-
- Alle obigen Variablen sind mit
- LET Variable=Term änderbar.
- LET läßt sich mit "~" abkürzen.
-
- Noch ein paar Read-Only-Variablen:
- TEXT, DATA, BSS, START, END, BASEPAGE, BP, ACTPD, MEMBASE,
- SAVEAREA
-
- Es gibt noch etwa 20-30 weitere nicht so wichtige Variablen.
-
- BREAKPOINT [Nummer=Adresse[,[*|=Wert|Anzahl|?Bedingung]|K]]
- Breakpoints anzeigen, löschen, ändern, setzen
-
-
- B5=PC+.100 Breakpoint 5 (0-15 ist mgl) auf Adresse PC+100
- setzen
-
- B K Alle Breakpoints löschen
-
- B Alle Breakpoints anzeigen
-
- BK3 Breakpoint 3 löschen
-
-
- B0=Adr,Anzahl : Breakpoint bricht beim Anzahl. Erreichen
- ab.
-
- B0=Adr,* : Breakpoint bleibt auch nach dem Erreichen
- erhalten. Normale Breakpoints werden automatisch
- gelöscht.
-
- B0=Adr,=Wert : Zähler auf die Adresse Adr setzen. In ^BC0
- wird hochgezählt wie oft die Adresse erreicht wurde.
-
- B0=Adr,?Term : Bedingter BKPT, Abbruch, wenn Term<>0 z.B.
- B0=Adr,?^D0=4711 => Abbrucht, wenn PC=Adr UND D0=
-
- GO [Adr]
- Programm an Adresse Adr, bzw. PC starten
-
- TRACE
- Wie F1
-
- SHOWMEMORY Term
- 16 Bytes ab Term stets anzeigen
-
- UNTRACE [Adr]
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 11
-
-
- solange Tracen, bis Bedingung erfüllt
-
- IF Term
- Bedingung für UNTRACE
-
- OBSERVE Trapno,Funkno
- Abbruch, wenn Trapno(Funktion) ausgeführt wird. z.B. OBSERVE
- 14,8 => Abbruch bei XBIOS(8) = Floprd()
-
- CLS
- 2.Bildschirmseite löschen
-
- MOUSEON / MOUSEOFF
- VDI-Maus an/aus
-
- |Befehl
- Befehl ausführen (zum Testen echt prima)
-
- LEXECUTE "Filename"[,"Commandline"]
- Programm ausführbar laden (=> Pexec()) Dann mit GO zu starten.
-
- LOAD "Filename"[,Adresse]
- File nicht ausführbar laden
-
- SAVE ["Filename"[,Adresse[,Endadresse]]]
- File abspeichern
-
- DIR Pfadmaske
- Directory anzeigen
-
- Pbefehl
- P vor einem Befehl leitet diesen zum Drucker um
-
- FOPEN Filename, Fbefehl, FCLOSE
- Ausgabe eines Befehls in eine Datei
-
- ERASE, KILL Filename
- Datei löschen (mit Jokern!)
-
- FREE
- Freier Hauptspeicher
-
- FREE Drive
- Freier Platz auf einem Laufwerk
-
- MKDIRECTORY Name
- Ordner erstellen
-
- RMDIRECTORY Name
- Ordner löschen (wenn leer)
-
- NAME oldname,newname
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 12
-
-
- File umnennen
-
- FATTRIBUT Filename,attribut
- File-Attribut ändern/setzen
-
- FORMAT DS/SS,Laufwerk
- Disk formatieren
-
- TYPE Filename
- ASCII-Datei anzeigen (SPACE hält Ausgabe an)
-
- READSEKTOR Track,Sektor,Seite,Adresse,Laufwerk (0 oder 1)
- Sektor mit XBIOS(8) einlesen
-
- WRITESEKTOR s.o.
- Sektor mit XBIOS(9) schreiben
-
- Alle in diesem Abschnitt angegebenden Befehle erlauben den
- gleichen Syntaxbei den Parametern, der deswegen an dieser Stelle
- erklärt wird, und im folgenden nur noch mit [Parameter]
- bezeichnet wird. Es gilt also:
-
- [Parameter] = [Von][[,]#[Zeilen]|,Bis|[,][Bytes[]]]
-
- Es sind also alle Parameter wahlfrei, d.h. man braucht keine
- Parameterangeben. Der Debugger nimmt dann vorgegebene interne
- Werte.
-
- Wenn der Ausdruck "Von" fehlt, wird ab der aktuellen Adresse
- z.B. disassembliert. Die aktuelle Adresse ist die Zahl am
- Zeilenanfang, bzw. wenn diese fehlt, die zuletzt benutzte
- Adresse.
-
- Als Endadresse gilt der Ausdruck "Bis", der jedoch nicht
- angegeben werden muß. Wird statt "Bis" ein "#" angegeben wird
- genau eine Zeile ausgegeben. Ein dem "#" folgender Term, gilt
- als Zeilenanzahl. Es können somit z.B. genau 8 Zeilen ausgegeben
- werden. Es werden jedoch maximal 99 Zeilen ausgegeben. Fehlt die
- Endangabe gänzlich, werden (normalerweise) 16 Zeilen ausgegeben.
- Die Anzahl läßt sich jedoch einstellen, indem man die Variable
- "Lines" entsprechend ändert. Die letzte Möglichkeit ist die
- Angabe der Byteanzahl in eckigen Klammern. Sie kann genauso, wie
- die Zeilenanzahl angegeben werden. Die "]" ist optional, d.h.
- man kann sie auch weglassen.
-
- Beispiel:
- "d text #5"
- Disassembliert 5 Zeilen ab Anfang des geladenen Programms.
-
- Beispiel:
- "m data[30]"
- Ein Memorydump des DATA-Segments (48 Bytes lang).
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 13
-
-
-
- DISASSEMBLE [Parameter]
- Disassemble mit Dump, der Dump kann geändert werden!
-
- LIST [Paramter]
- Disassemble ohne Dump mit Symbolen, Opcodes können geändert
- werden (RETURN nicht vergessen)
-
- SYMBOLTABLE [Parameter]
- evtl. vorhandene Symboltabelle anzeigen
-
- MEMORY[.B|.W|.L][Parameter]
- Memorydump mit Ausgabebreite (Änderbar)
-
- ASCII [Parameter]
- ASCII-Dump (Änderbar)
-
- FIND [Von,Bis],Terme{,Term}
- geladenes Programm oder Speicherbereich nach den Termen
- durchsuchen
-
- HUNT s.o.
- wie Find, jedoch nur auf geraden Adressen
-
- ASCFIND [Von,Bis],String
- ASCII-Suche im Disassemblerlisting (mit Jokern). Langsam, aber
- ab und zu praktisch
-
- CONTINUE
- Hunt, Find oder ASCFIND fortsetzen, wenn mit ESC abgebrochen
-
- INFO
- mal ausprobieren
-
- SYSINFO
- auch mal ausprobieren
-
- MOVE, COPY Von,Bis,Nach
- Speicherblock kopieren
-
- FILL Von,Bis,Term{,Term}
- Speicherblock füllen
-
- CLR [Von,Bis]
- Speicherblock löschen (oder alles)
-
- COMPARE Von,Bis,Adr
- Bereich Von,Bis mit Bereich ab Adr vergleichen
-
- EXIT, QUIT, SYSTEM
- Debugger verlassen
-
-
-
-
-
-
- 1.1 TurboAss Kurzanleitung 14
-
-
- RESIDENT
- Debugger resident halten
-
- SET, LET, ~
- siehe oben
-
- RESET ALL
- Debugger-Kaltstart
-
- HELP
- Gibt alle Befehle unsortiert aus (wie man sieht, ein paar mehr
- als hier beschrieben)
-
-
- 4 Was bringt die Zukunft?
-
- Nun, daß hängt sehr vom Erfolg der Shareware-Konzeptes ab.
- Sicher, wir machen weiter, aber ob wir einen 68020/30 Assembler
- mit FPU- und PMMU-Support (Atari TT) mit Makros, lokalen
- Symbolen etc. als Shareware rausbringen? Nun, wenn es sich lohnt
- immer... Allerdings geht das Studium vor...
-
- Was kommt denn als nächstes?
-
- Der Sourcecode-Debugger ist schon ganz nett (wenn auch bei
- Sourcetexten mit >10000 Zeilen recht langsam => Arbeit,
- Arbeit,... ), kann man doch jederzeit gucken, an welcher Stelle
- der PC im Sourcetext steht, ohne in den Assembler
- zurückzumüssen. Die Remarks zu sehen ist ja auch nicht schlecht.
- Und das tollste: das Ganze spart auch noch Platz! Beim normalen
- Debuggen wird eine Symboltabelle benötigt, beim
- Sourcecode-Debugging wird dagegen laufend umgerechnet, wo der PC
- im Sourcetext steht (und das recht fix (bei Sourcetexten <10000
- Zeilen, s.o.)).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Inhaltsverzeichnis
-
- TurboAss V1.62
-
- 1 Allgemeines .......................................... 1
- 1.1 Einleitung ...................................... 1
- 1.2 Features des Turbo-Ass ............................ 1
- 1.3 Was ist Shareware? ................................ 2
- 1.4 Hardwarevorraussetzungen ........................ 3
- 1.5 Installation .................................... 3
- 1.6 Zu den Autoren .................................... 3
- 1.7 Haftung/Rechte .................................. 3
-
- 2 Der Assembler ......................................... 4
- 2.1 Benutzeroberfläche .............................. 4
- 2.2 Die Maus im Assembler .............................. 4
- 2.3 Der Editor ....................................... 4
- 2.4 Besonderheiten .................................. 4
- 2.5 Optimierungen ................................... 5
- 2.6 Formeln ......................................... 5
- 2.7 Tastaturkommandos ............................... 5
- 2.8 Ein paar Worte zu den............................... 6
- 2.9 Der Assembler .................................... 6
- 2.10 Pseudo-Opcodes des Assemblers .................... 7
-
- 3 Der Debugger .......................................... 7
- 3.1 Vorwort ......................................... 7
- 3.2 Allgemeines ..................................... 7
- 3.3 Die Bedienung .................................... 8
- 3.4 Die Befehle ...................................... 9
-
- 4 Was bringt die Zukunft? ................................. 14
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - I -
-
-